package com.weaving.monitor.mapper;

import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;

/**
 * 生产产品数据访问接口
 * 
 * 功能说明：
 * 1. 提供对prod_product表的数据库操作
 * 2. 根据生产卡片ID查询产品ID列表
 * 3. 为疵点统计提供产品数据支持
 * 
 * 注解说明：
 * - @Mapper: MyBatis注解，标识这是一个Mapper接口
 * 
 * 主要功能：
 * 1. 根据生产卡片ID查询产品ID列表
 * 2. 为疵点统计提供产品基础数据
 * 
 * @author 系统开发团队
 * @version 1.0
 * @since 2024-01-01
 */
@Mapper
public interface ProdProductMapper {
    
    /**
     * 根据生产卡片ID查询产品ID列表
     * 
     * 功能说明：
     * 1. 根据生产卡片ID查询对应的产品ID列表
     * 2. 查询条件：card_id=指定的生产卡片ID
     * 3. 返回产品ID列表，用于后续疵点统计
     * 
     * SQL语句：
     * SELECT id FROM prod_product WHERE card_id=#{cardId}
     * 
     * @param cardId 生产卡片ID
     * @return 产品ID列表
     */
    List<String> selectProductIdsByCardId(@Param("cardId") String cardId);
    
    /**
     * 根据生产卡片ID和状态查询产品ID列表
     * 
     * 功能说明：
     * 1. 根据生产卡片ID和状态查询对应的产品ID列表
     * 2. 查询条件：card_id=指定的生产卡片ID and status=指定的状态
     * 3. 返回产品ID列表，用于后续疵点统计
     * 
     * @param cardId 生产卡片ID
     * @param status 状态，如'1'表示正在生产
     * @return 产品ID列表
     */
    List<String> selectProductIdsByCardIdAndStatus(@Param("cardId") String cardId, @Param("status") String status);
} 